package br.ita.doacoes.core.controledoacoes;


import java.util.List;

import javax.persistence.EntityManager;
import javax.persistence.EntityTransaction;
import javax.persistence.Query;

import br.ita.doacoes.domain.controledoacoes.LocalArmazenamento;

public class LocalArmazenamentoDAOJPA implements DAOLocalArmazenamento<LocalArmazenamento> {
	
	
	
	public void excluir_local(LocalArmazenamento local)  {
		EntityManager em = JPAUtil.getEntityManager();
		EntityTransaction t = em.getTransaction();
		t.begin();
		
		LocalArmazenamento l =em.find(LocalArmazenamento.class,local.getId_local());
		em.remove(l);
		
		t.commit();
		em.close();
	}

	public void inserir_local(LocalArmazenamento local)  {		
		EntityManager em = JPAUtil.getEntityManager();
		EntityTransaction t = em.getTransaction();
		t.begin();		
		em.persist(local);		
		t.commit();
		em.close();

	}

	public void alterar_local(LocalArmazenamento local) {
		EntityManager em = JPAUtil.getEntityManager();
		EntityTransaction t = em.getTransaction();
		t.begin();
		
		em.merge(local);
		
		t.commit();
		em.close();		
	}	

	public LocalArmazenamento getById(int id) {
		
		EntityManager em = JPAUtil.getEntityManager(); 
		LocalArmazenamento l = em.find(LocalArmazenamento.class, id);
		em.close();
		return l;
	}

	public List<LocalArmazenamento> getList() {
		EntityManager em = JPAUtil.getEntityManager();
		Query q =em.createQuery("select l from LocalArmazenamento l");
		List<LocalArmazenamento> list = q.getResultList();
		em.close();
		return list;		
	}
}
